头文件中只有声明,没有定义 | 您所在的位置:网站首页 › 头文件函数声明 源文件实现 › 头文件中只有声明,没有定义 |
前言:
头文件中只有声明,而没有定义。这是为什么呢?刚看到这个问题我也比较纳闷。因为我学C++之前一直是这样的,直到学习了C++中的内联函数,内联函数的声明和定义分别在不同的源文件中,出现了链接错误。这个时候又接触到了这个问题:头文件中只有声明而没有定义。在本篇博客中,我会分析这方面的内容,同时也会讲到内联函数。 目录 前言: 头文件声明和定义 《高质量C/C++编程指南》说明 内联函数 内联函数练习题 头文件声明和定义虽然我们常说定义不能放在头文件中,但是也有例外: 头文件中可以定义普通变量或函数,但是前提条件是只有一个.c或者.cpp文件包含了这个头文件,否则会反生链接错误; 头文件中可以定义const或者static修饰的变量或者函数; 类的定义放在头文件中; inline函数定义在头文件中。 简单测试用例:在一个工程中创建三个文件: test.h #ifndef __TEST_H__ #define __TEST_H__ #include #include int x; #endif//__TEST_H__test.cpp #include"test.h" int main() { x = 9; std::cout |
CopyRight 2018-2019 实验室设备网 版权所有 |